<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>

        /* 
        1. push()
        2.pop()
        3.unshift()
        4.shift()
        原数组都发生了变化 
        
        */
        /* 
         5. reverse()
        + 语法: 数组.reverse()
        + 作用: 反转数组  注意仅仅是反转 不排序 
        + 返回值: 反转以后的数组

      6. sort()
        + 语法:
          => 数组.sort()
            -> 按照每一个数据的 一位一位 来进行排序的
            // 先比较第一位 如果第一位一样 看下一位  以此类推 
            // 默认比较的是字符 一位一位的比 可以比较数字 可能不准确
            // 应该每个数字是个整体 不应该一位一位的分开
            // 如何解决?
            // 将一个匿名函数传给sort
          => 数组.sort(function (a, b) { return a - b })
            -> 按照数字大小排序, 升序
          => 数组.sort(function (a, b) { return b - a })
            -> 按照数字大小排序, 降序
        + 作用: 对数组内的数据进行排序
        + 返回值: 排序后的数组

      7. splice()
        + 语法:
          => 数组.splice(开始索引, 多少个)
          => 数组.splice(开始索引, 多少个, 插入的数据1, 插入的数据2, ...), 从哪截取从哪插入
        + 作用: 截取数组部分内容, 并选择性插入内容 实现数组的增删改
        只截取 不添加  =  删除某些元素
        截取 并且添加  = 替换某些元素
        不截取 添加 = 添加元素 
        + 返回值: 必然是一个新数组
          => 新数组内包含的就是截取出来的部分内容
          不截取 返回空数组 
        
        
        
        
        */


        // reverse 翻转数组  仅仅反转 不排序

        // var heros = ['姬小满','莱西奥','赵怀真','海月','戈娅','桑启','暃暃','金蝉','云缨','艾琳'];
        // console.log('原数组',heros);
        // heros.reverse();
        // console.log('反转以后的数组',heros);
        // var arrs = [1,6,9,10,23,4,56,7];
        // console.log('原数组',arrs);
        // arrs.reverse();
        // console.log('反转以后的数组',arrs);


        //sort()

        // var arrs = ['g','f','h','i','c','a','f','ab'];
        // console.log('排序以前的数组',arrs);
        // a 97 
        // A65
        // arrs.sort();
        // console.log('排序以后的数组',arrs);

        // alert('ab'>'ac');


        // var arrs = [1,6,9,10,23,4,56,7];
        // console.log('原数组',arrs);
        // arrs.sort();
        // console.log('排序以后数组',arrs);


        // var arrs = [1,6,9,10,23,4,56,7];
        // console.log('原数组',arrs);
        // arrs.sort(function(a,b){return a-b});
        // console.log('排序以后数组',arrs);


        // var arrs = [1,6,9,10,23,4,56,7];
        // console.log('原数组',arrs);
        // arrs.sort(function(a,b){return b-a});
        // console.log('排序以后数组',arrs);



        // 数组的增 splice

        // var heros = ['姬小满','莱西奥','赵怀真','海月','戈娅','桑启','暃暃','金蝉','云缨','艾琳'];
        // console.log(heros);
        // var res = heros.splice(6,0,'安琪拉','赵云');
        // console.log('splice的返回值是:',res);
        // console.log('添加以后的数组',heros);

        // 数组的删除 splice 
        // var heros = ['姬小满','莱西奥','赵怀真','海月','戈娅','桑启','暃暃','金蝉','云缨','艾琳'];
        // console.log(heros);
        // var res = heros.splice(3,3);
        // console.log('splice的返回值是:',res);
        // console.log('删除以后的数组',heros);


        // 数组的修改
        
        var heros = ['姬小满','莱西奥','赵怀真','海月','戈娅','桑启','暃暃','金蝉','云缨','艾琳'];
        console.log(heros);
        var res = heros.splice(6,3,'李白','诸葛亮','小乔','大乔','周瑜');
        console.log('splice的返回值是:',res);
        console.log('修改以后的数组',heros);
    </script>
</body>
</html>